Startwert(e) von Variablen oder kompletten Datenblöcken lesen oder schreiben
| LGF_StartValueReadWrite (FB) | ||||||||
|---|---|---|---|---|---|---|---|---|
| Bool | read | readDone | Bool | |||||
| Bool | write | writeDone | Bool | |||||
| Variant | dataSource | busy | Bool | |||||
| Variant | dataDestination | error | Bool | |||||
| lastRead | DTL | |||||||
| lastWrite | DTL | |||||||
| status | Word | |||||||
| diagnostics | LGF_typeDiagnostics | |||||||
| Bezeichner | Datentyp | Default Wert | Beschreibung |
|---|---|---|---|
| read | Bool | FALSE | Ansteigende Flanke: Startwert des Datenblocks / Variable des Datenblocks lesen |
| write | Bool | FALSE | Steigende Flanke: Aktuelle(r) Wert(e) in Startwert des Datenblocks / Variable des Datenblocks schreiben |
| dataSource | Variant | --- | Daten (Block / Variable) Quelle, wenn eine separate Quelle benötigt wird. Darf auch `NULL` sein - dann wird das Ziel gleichermaßen als Quelle verwendet. |
| dataDestination | Variant | --- | Daten (Block / Variable) Destination |
| Bezeichner | Datentyp | Beschreibung |
|---|---|---|
| readDone | Bool | TRUE: Lesen wurde erfolgreich abgeschlossen |
| writeDone | Bool | TRUE: Schreiben wurde erfolgreich abgeschlossen |
| busy | Bool | TRUE: FB ist noch nicht beendet und neue Ausgangswerte können erwartet werden |
| error | Bool | TRUE: Während der Ausführung des FBs ist ein Fehler aufgetreten |
| lastRead | DTL | Zeitstempel des letzten Lesezugriffs |
| lastWrite | DTL | Zeitstempel des letzten Schreibzugriffs |
| status | Word | 16#0000 - 16#7FFF: Status des FBs, 16#8000 - 16#FFFF: Fehleridentifikation |
| diagnostics | LGF_typeDiagnostics | Diagnoseinformationen |
| Code / Wert | Bezeichner / Beschreibung |
|---|---|
| 16#0001 | STATUS_READ_DONE Schreibausführung ohne Fehler beendet |
| 16#0002 | STATUS_WRITE_DONE Leseausführung ohne Fehler beendet |
| 16#7000 | STATUS_NO_CALL Kein Auftrag in Bearbeitung |
| 16#7001 | STATUS_READ Wert(e) lesen in Bearbeitung |
| 16#7002 | STATUS_WRITE Wert(e) schreiben in Bearbeitung |
| 16#8400 | ERR_MULTIPLE_COMMANDS Fehler: Mehrere Befehle zur gleichen Zeit sind nicht erlaubt. |
| 16#8600 | ERR_UNDEFINED_STATE Fehler: Undefinierter Zustand im Zustandsautomaten |
| 16#8601 | ERR_READ Fehler: Wert(e) lesen `READ_DBL` - siehe `diagnostics.subfunctionStatus` |
| 16#8602 | ERR_WRITE Fehler: Wert(e) schreiben `WRITE_DBL` - siehe `diagnostics.subfunctionStatus` |
| 16#8611 | ERR_READ_TIME Fehler: Zeitstempel `RD_LOC_T` beim Lesen von Werten - siehe `diagnostics.subfunctionStatus` |
| 16#8612 | ERR_WRITE_TIME Fehler: Zeitstempel `WR_LOC_T` beim Schreiben von Werten - siehe `diagnostics.subfunctionStatus` |
Diagnosestruktur zur Speicherung und Übertragung von Diagnoseinformationen von Blöcken über die Schnittstelle.
| Bezeichner | Datentyp | Default Wert | Beschreibung |
|---|---|---|---|
| status | Word | 16#0000 | Status des Bausteins oder Fehleridentifikation beim Auftreten des Fehlers |
| subfunctionStatus | Word | 16#0000 | Status oder Rückgabewert von aufgerufenen FB's, FC's und Systembausteinen |
| stateNumber | DInt | 0 | Zustand in der Zustandsmaschine des Blocks, in dem der Fehler aufgetreten ist |
Die Funktion liest oder schreibt den Startwert einer einzelnen Variablen, einer strukturierten Variable oder eines ganzen Datenbereichs oder Datenblocks von der Quelle in das Ziel.
Der Parameter dataDestination muss immer vorhanden sein, der Parameter dataSource ist optional.
Wenn dataSource nicht verwendet wird, wird die Funktion...
Die Möglichkeiten sind zum Beispiel:
| Version & Datum | Änderungsbeschreibung | |
|---|---|---|
| 1.0.0 | Simatic Systems Support | |
| 2025-05-05 | First released version | |